启用/禁用textarea不适用于多行

时间:2017-08-01 03:30:13

标签: php

class ViewController: UIViewController {

    let demoLabel: UILabel = {

        let label = UILabel()
        label.translatesAutoresizingMaskIntoConstraints = false
        label.font = .systemFont(ofSize: 14)
        label.textColor = .green
        label.text = "This is the demo label for testing automatically scrolling of uilabel when user not clicked on label if user click on label the scrolling is stoped."
        return label
    }()



    override func viewDidLoad() {
        super.viewDidLoad()
        view.addSubview(demoLabel)
       startAnimation()
}

脚本在获取多行时脚本不起作用的脚本只能用于第一行

3 个答案:

答案 0 :(得分:0)

您不能对多个html元素使用相同的ID。您需要为元素分配动态ID并根据单击的元素处理它们。使用自动增量ID或用户定义的增量变量以及固定的id字符串。 ex,city_(increment_value)和description_(increment_value)。然后将此对象传递给javascript函数。处理每件物品都很容易。



.gitsubmodule




答案 1 :(得分:0)

根据我的理解,似乎你在循环中有上面的代码,因此当你有一行它工作正常。但是当您按ID获取元素时,如果您有多行,则会失败。 发生这种情况是因为您的ID对于元素必须是唯一的。

您可以使用下面的代码使用jQuery的Next()函数来搜索下一个textarea和dsables,以使其正常工作:

<form method="post" name="areaform" id="areaform">
<select name="city"  onchange="checkCity(this);">
<option value="city1">city1</option>
<option value="city2">city2</option>
<option value="city3">city3</option>
</select><br />
<br />

<textarea name="description" cols="" rows="" style="width:150px; height:50px;"></textarea>
</form>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
function checkCity(ele) {
    ct = $(ele).val();
    if(ct=="city2") {
        $(ele).next('textarea').prop('disabled',true);
     }else{
        $(ele).next('textarea').prop('disabled',false);
     }
 }
 </script>  

修改您需要使用'prop'代替'attr'

答案 2 :(得分:0)

您可以从fine_id代码中删除值属性,因为它们在文本中包含相同的信息。

你说你有多行,所以我假设你有多个表格。如果这是真的,那么您将需要在相应的QString path = "a4.wav"; QFile inputFile(path); inputFile.open(QIODevice::ReadOnly); QByteArray block; QDataStream out(&block, QIODevice::WriteOnly); out.setVersion(QDataStream::Qt_5_4); QByteArray q = inputFile.readAll(); block.append(q); inputFile.close(); out.device()->seek(0); qint32 x = 0; unsigned int i = 0; while (x < block.size()) { qint32 y = socket->write(&block.data()[i],1); //Filling one byte in socket to write x += y; //qDebug() << y; //qDebug() << x; // summary size you send, so you can check recieved and replied sizes i++; } 内查找您的textarea。 - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { return [self.adminOrderElements count]; } - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return adminOrderElements[section].products.count + 1; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { if (indexPath.row < adminOrderElements[indexPath.section].products.count) { static NSString *CellIdentifier = @"Cell"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath]; if (!cell) { cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier]; } NSArray * tempArray = adminOrderElements[indexPath.section].products; cell.textLabel.text = [[tempArray objectAtIndex:indexPath.row] objectForKey:@"productname"]; return cell; } else { static NSString *CellIdentifier = @"FooterCell"; FooterTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; if (cell == nil) cell = [[FooterTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier]; if(adminOrderElements[indexPath.section].expanded && [adminOrderElements[indexPath.section].notes length]>0) { cell.footerLabel.text = [NSString stringWithFormat:@"Notes: %@", adminOrderElements[indexPath.section].notes]; } else { cell.heightConstraints.constant = 1; cell.footerLabel.text = @""; } return cell; } } 可以做到这一点。您还应确保dom中没有重复的标记ID。

使用<option>设置禁用的布尔值。

<form>